package jeecg.business.entity.report;

import java.util.ArrayList;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;

import jeecg.system.pojo.base.TSDepart;

import org.hibernate.annotations.GenericGenerator;

/**   
 * @Title: Entity
 * @Description: 简报目录
 * @author LinYingPiaoJian
 * @date 2015-09-29 19:09:25
 * @version V1.0   
 *
 */
@Entity
@Table(name = "NMS_REPORT_CATALOG", schema = "")
@SuppressWarnings("serial")
public class ReportCatalogEntity implements java.io.Serializable {
	/**主键*/
	private java.lang.String id;
	/**企业ID*/
	private java.lang.String qyid;
	/**名称*/
	private java.lang.String mc;
	/**顺序号*/
	private java.lang.Integer sxh;
	
	private List<ReportCatalogEntity> reportCatalogs = new ArrayList<ReportCatalogEntity>();//下属部门
	
	private ReportCatalogEntity preportCatalogEntity;//上级部门
	
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  主键
	 */
	
	@Id
	@Column(name ="ID",nullable=false,length=64)
	public java.lang.String getId(){
		return this.id;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  主键
	 */
	public void setId(java.lang.String id){
		this.id = id;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  企业ID
	 */
	@Column(name ="QYID",nullable=true,length=32)
	public java.lang.String getQyid(){
		return this.qyid;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  企业ID
	 */
	public void setQyid(java.lang.String qyid){
		this.qyid = qyid;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  名称
	 */
	@Column(name ="MC",nullable=true,length=255)
	public java.lang.String getMc(){
		return this.mc;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  名称
	 */
	public void setMc(java.lang.String mc){
		this.mc = mc;
	}
	

	/**
	 *方法: 取得java.lang.Integer
	 *@return: java.lang.Integer  顺序号
	 */
	@Column(name ="SXH",nullable=true,precision=10,scale=0)
	public java.lang.Integer getSxh(){
		return this.sxh;
	}

	/**
	 *方法: 设置java.lang.Integer
	 *@param: java.lang.Integer  顺序号
	 */
	public void setSxh(java.lang.Integer sxh){
		this.sxh = sxh;
	}
	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "preportCatalogEntity")
	public List<ReportCatalogEntity> getReportCatalogs() {
		return reportCatalogs;
	}

	public void setReportCatalogs(List<ReportCatalogEntity> reportCatalogs) {
		this.reportCatalogs = reportCatalogs;
	}
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "pid")
	public ReportCatalogEntity getPreportCatalogEntity() {
		return preportCatalogEntity;
	}

	public void setPreportCatalogEntity(ReportCatalogEntity preportCatalogEntity) {
		this.preportCatalogEntity = preportCatalogEntity;
	}
	
	
}
